const db = wx.cloud.database()
class LoginFun {
	constructor() {}
	// 登陆
	login() {
		return new Promise((resolve, reject) => {
			uni.getUserProfile({
				desc: '获取用户信息',
				success: async (res) => {
					// console.log("res",res);
					
					// 存储数据库前先查询数据库是否存在用户信息，不存在则提交至数据库
					const query_user = await db.collection('user_info').get()
					if (query_user.data.length > 0) {
						// 数据库中存在该用户信息，取出来
						const user = query_user.data[0]
						// 将用户信息存到本地缓存
						uni.setStorageSync('user_info', { 
							avatarUrl: user.avatarUrl, 
							nickName: user.nickName, 
							openid: user._openid // 用于支付模块
						})
					} else {
						// 没有用户就存进数据库
						await db.collection('user_info').add({ 
							data: { 
								avatarUrl: res.userInfo.avatarUrl, 
								nickName: res.userInfo.nickName, 
								watch_num: 1, 
								pay: true 
							}
						}) 
						// 将数据库信息取出来存进本地缓存
						const query = await db.collection('user_info').get()
						uni.setStorageSync('user_info', { 
							avatarUrl: query.data[0].avatarUrl, 
							nickName: query.data[0].nickName, 
							openid: query.data[0]._openid
						})
					}
					resolve('success')
				},
				fail: (err) => {
					reject(err)
				}
			})
		})
	}
}
export { LoginFun }
